package com.snap.vseries.bean;

import java.io.Serializable;

import io.protostuff.Tag;

/**
 * ChannelBean 通道信息
 * 恒温段+扩增段+溶解段
 */
public class ChannelBean implements Serializable {

    /**
     * 恒温段+扩增段：原始荧光数据
     */
    @Tag(1)
    private float[] origin;
    /**
     * 恒温段+扩增段：相对荧光数据
     */
    @Tag(2)
    private float[] fit;
    @Tag(3)
    private float ctValue;
    @Tag(4)
    private double[] fitParams;//拟合参数
    @Deprecated
    @Tag(5)
    private boolean ampFlag = false;
    @Tag(6)
    private int channelIndex;
    @Tag(7)
    private int holeIndex;
    @Tag(8)
    private int index;

    /**
     * 溶解段:原始荧光数据
     */
    @Tag(10)
    private float[] meltOrigin;
    /**
     * 溶解段:拟合过的熔解曲线数据
     */
    @Tag(11)
    private float[] meltFit;
    @Tag(12)
    private float meltCtValue;
    @Tag(13)
    private float[] meltD;//一阶求导数据


    @Tag(200)
    private int endPoint;
    @Tag(201)
    private int blStart;
    @Tag(202)
    private int blStop;
    @Tag(205)
    private float threshold;

    @Deprecated
    @Tag(9)
    private float ctValueManual;

    public float[] getOrigin() {
        return origin;
    }

    public void setOrigin(float[] origin) {
        this.origin = origin;
    }

    public float[] getFit() {
        return fit;
    }

    public void setFit(float[] fit) {
        this.fit = fit;
    }

    public float getCtValue() {
        return ctValue;
    }

    public void setCtValue(float ctValue) {
        this.ctValue = ctValue;
    }

    public double[] getFitParams() {
        return fitParams;
    }

    public void setFitParams(double[] fitParams) {
        this.fitParams = fitParams;
    }

    public boolean isAmpFlag() {
        return ampFlag;
    }

    public void setAmpFlag(boolean ampFlag) {
        this.ampFlag = ampFlag;
    }

    public int getChannelIndex() {
        return channelIndex;
    }

    public void setChannelIndex(int channelIndex) {
        this.channelIndex = channelIndex;
    }

    public int getHoleIndex() {
        return holeIndex;
    }

    public void setHoleIndex(int holeIndex) {
        this.holeIndex = holeIndex;
    }

    public int getIndex() {
        return index;
    }

    public void setIndex(int index) {
        this.index = index;
    }

    public float[] getMeltOrigin() {
        return meltOrigin;
    }

    public void setMeltOrigin(float[] meltOrigin) {
        this.meltOrigin = meltOrigin;
    }

    public float[] getMeltFit() {
        return meltFit;
    }

    public void setMeltFit(float[] meltFit) {
        this.meltFit = meltFit;
    }

    public float[] getMeltD() {
        return meltD;
    }

    public void setMeltD(float[] meltD) {
        this.meltD = meltD;
    }

    public float getMeltCtValue() {
        return meltCtValue;
    }

    public void setMeltCtValue(float meltCtValue) {
        this.meltCtValue = meltCtValue;
    }

    public int getEndPoint() {
        return endPoint;
    }

    public void setEndPoint(int endPoint) {
        this.endPoint = endPoint;
    }

    public int getBlStart() {
        return blStart;
    }

    public void setBlStart(int blStart) {
        this.blStart = blStart;
    }

    public int getBlStop() {
        return blStop;
    }

    public void setBlStop(int blStop) {
        this.blStop = blStop;
    }

    public float getThreshold() {
        return threshold;
    }

    public void setThreshold(float threshold) {
        this.threshold = threshold;
    }
}
